package cn.fl.risk.transform;

import java.util.ArrayList;
import java.util.List;

import cn.cmm.base.framework.utils.CollectionUtils;
import cn.fl.risk.dto.RskArreExpLogDDTO;
import cn.fl.risk.vo.RskArreExpLogDVO;


 /**
 * @Description: 支付表欠款明细导出记录明细 转换器
 * @Description: VO是客户端传递数据到服务端进行转换的数据 
 * @Description: VO转换数据变成DTO传递到服务端 
 * @Description: VO不能在服务端出现
 */
public class RskArreExpLogDVOTransform {


	/**
	 * DTO 转  VO
	 * @param po RskArreExpLogDDTO
	 * @return RskArreExpLogDVO
	 */
	public static RskArreExpLogDVO toVO(RskArreExpLogDDTO dto) {
		RskArreExpLogDVO  vo = null;
		if (dto != null) { 
			vo = new RskArreExpLogDVO();
			vo.setId(dto.getId());
			vo.setArreExpMId(dto.getArreExpMId());//支付表ID
			vo.setLsPd(dto.getLsPd());//支付表编号
			vo.setPayDt(dto.getPayDt());//发起结清时间
			vo.setFeeAmt(dto.getFeeAmt());//标记结清时间
			vo.setArPayDt(dto.getArPayDt());//结清金额（元）
			vo.setArAmt(dto.getArAmt());//结清期次
			vo.setOverdueAmt(dto.getOverdueAmt());//OVERDUE_AMT
			vo.setOverdueDay(dto.getOverdueDay());//OVERDUE_DAY
			vo.setPenaltyAmt(dto.getPenaltyAmt());//PENALTY_AMT
			vo.setArPenalarAmt(dto.getArPenalarAmt());//剩余未核销租金合计
			vo.setBreachAmt(dto.getBreachAmt());//剩余未核销本金合计
			vo.setArBreachAmt(dto.getArBreachAmt());//剩余未核销利息合计
			vo.setPaymentDt(dto.getPaymentDt());//结清时实际已还本金合计
			vo.setPaymentWayCd(dto.getPaymentWayCd());//结清时实际已还利息合计
			vo.setPaymentWayCdNm(dto.getPaymentWayCdNm());
			vo.setPaymentAmt(dto.getPaymentAmt());//截止发起日应交逾期租金

			vo.setCrtTm(dto.getCrtTm());//创建时间
			vo.setCrtUsrId(dto.getCrtUsrId());//创建人
			vo.setMdfTm(dto.getMdfTm());//修改时间
			vo.setMdfUsrId(dto.getMdfUsrId());//修改人
		}
		return vo;
	}

	/**
	 * VO 转 DTO
	 * @param dto RskArreExpLogDVO
	 * @return RskArreExpLogDDTO
	 */
	public static RskArreExpLogDDTO toDTO(RskArreExpLogDVO vo) {
		RskArreExpLogDDTO dto = null;
		if (vo != null) {
			dto = new RskArreExpLogDDTO();
			dto.setId(vo.getId());
			dto.setArreExpMId(vo.getArreExpMId());//支付表ID
			dto.setLsPd(vo.getLsPd());//支付表编号
			dto.setPayDt(vo.getPayDt());//发起结清时间
			dto.setFeeAmt(vo.getFeeAmt());//标记结清时间
			dto.setArPayDt(vo.getArPayDt());//结清金额（元）
			dto.setArAmt(vo.getArAmt());//结清期次
			dto.setOverdueAmt(vo.getOverdueAmt());//OVERDUE_AMT
			dto.setOverdueDay(vo.getOverdueDay());//OVERDUE_DAY
			dto.setPenaltyAmt(vo.getPenaltyAmt());//PENALTY_AMT
			dto.setArPenalarAmt(vo.getArPenalarAmt());//剩余未核销租金合计
			dto.setBreachAmt(vo.getBreachAmt());//剩余未核销本金合计
			dto.setArBreachAmt(vo.getArBreachAmt());//剩余未核销利息合计
			dto.setPaymentDt(vo.getPaymentDt());//结清时实际已还本金合计
			dto.setPaymentWayCd(vo.getPaymentWayCd());//结清时实际已还利息合计
			dto.setPaymentWayCdNm(vo.getPaymentWayCdNm());
			dto.setPaymentAmt(vo.getPaymentAmt());//截止发起日应交逾期租金

			dto.setCrtTm(vo.getCrtTm());//创建时间
			dto.setCrtUsrId(vo.getCrtUsrId());//创建人
			dto.setMdfTm(vo.getMdfTm());//修改时间
			dto.setMdfUsrId(vo.getMdfUsrId());//修改人
		}
		return dto;
	}
	
	/**
	 * DTO集合 转 VO集合
	 * @param List<RskArreExpLogDDTO>
	 * @return List<RskArreExpLogDVO>
	 */
	public static List<RskArreExpLogDVO> toVOList(List<RskArreExpLogDDTO> list) {
		List<RskArreExpLogDVO>  voList = new ArrayList<RskArreExpLogDVO>();
		if(CollectionUtils.isNotEmpty(list)){
			for (RskArreExpLogDDTO dto : list) {
				voList.add(toVO(dto));
			}
		}
		return voList;
	}
	
	/**
	 * VO集合 转 DTO集合
	 * @param list List<RskArreExpLogDVO>
	 * @return List<RskArreExpLogDDTO>
	 */
	public static List<RskArreExpLogDDTO> toDTOList(List<RskArreExpLogDVO> list) {
		List<RskArreExpLogDDTO>  dtoList = new ArrayList<RskArreExpLogDDTO>();
		if(CollectionUtils.isNotEmpty(list)){
			for (RskArreExpLogDVO vo : list) {
				dtoList.add(toDTO(vo));
			}
		}
		return dtoList;
	}
}
